Method and apparatus for spread spectrum interference cancellation

ABSTRACT

The interference cancellation (IC) system ( 500 ) includes a plurality of IC units, for which IC is applied. Each IC unit has its spread spectrum code generator, delay devices, correlators or matched filters (MF), spreading circuits and subtracting and adding devices. The IC process in accordance with the invention includes using a bank of MF to despread the received signal at every time instant corresponding to every identified multipath of every user&#39;s transmitted signal. Based on the despread signals, an initial decision for the present information symbol of every user can be made using a single-user receiver such as, for example, the conventional Rake receiver or an equalizer. Based on the initial decisions, IC regenerates the multipath signals for each user using timed versions of the spread spectrum code, the delays of the multipaths, and the corresponding channel medium estimates. By adding the regenerated signal estimates for the multipaths of all users, an estimate of the received signal at the input of the receiver prior to despreading can be reconstructed. Each IC unit despreads the regenerated received signal using timed versions of the corresponding spread spectrum code for each multipath delay. The result is subsequently subtracted from the initial despread signal and, to avoid removing the desired user path component, the reconstructed, interference-free, desired despread signal path is also added. The above IC process may be repeated several times (e.g., using several IC stages). Performing interference cancellation after despreading the regenerated estimate of the received signal leads to substantially smaller complexity than the prior art approach where the interference cancellation occurs prior to dispreading.

This application is a Continuation-in-Part of application Ser. No.09/974,576 filed Oct. 9, 2001.

TECHNICAL FIELD

This invention relates in general to the field of radio communicationsand more specifically to a method and apparatus for spread spectruminterference cancellation.

BACKGROUND

Code Division Multiple Access (CDMA) has been extensively used in suchapplications as cellular and satellite communications. CDMA signalsincrease the spectrum required for the transmission of a particular datarate by modulating each information symbol with a spread spectrum codehaving a rate larger than the data rate. The same spreading code is usedfor each information symbol. Typically, the spreading code includes afew tens or a few hundreds elements, called chips, and is chosen fromthe set of orthogonal (Walsh) codes of the given code length. Todecrease the correlations among spreading codes assigned to differentusers and thereby reduce the interference among different users, thedata stream after spreading is typically scrambled with a pseudonoise(PN) code that is generated serially and cyclically and has a largerperiod than the spreading code. PN codes have considerably bettercorrelation properties than orthogonal codes. Examples of such CDMAsignal spreading are the schemes used by the IS-95/CDMA2000 and WidebandCode Division Multiple Access (WCDMA) systems.

With CDMA, the signals from all users simultaneously occupy the samefrequency band. The receiver discriminates the multiple signals byexploiting the properties of the spreading and scrambling codes that areapplied to the signal of each user. The receiver attempts to match intime with the codes of the desired signal a replica of those spreadingand scrambling codes. Only then is the demodulation result meaningful;otherwise it appears noise-like. Thus, if the arriving signals havedifferent codes or different code offsets, they can be discriminated atthe receiver.

In the downlink of cellular communication systems, i.e. thecommunication from base stations to mobile terminals, the wirelesschannel may introduce multipath propagation. Even if the signalstransmitted by the base station are spread using orthogonal codes (Walshcodes), the multipath propagation will destroy the orthogonality andproduce Multiple-Access Interference (MAI). In the uplink (i.e., thecommunication from mobile terminals to base stations), the signals areasynchronously transmitted. Orthogonality in this case cannot beachieved and each user's signal will experience MAI.

Interference cancellation (IC) attempts to suppress the MAI byestimating and subtracting the contribution of each interferer from thereceived signal. Because the capacity of CDMA systems is MAI limited,estimating and canceling the MAI will increase the capacity.Alternatively, IC can reduce the signal-to-noise ratio (SNR) required toachieve a specific symbol-error-rate (SER) value for a specific numberof users, thereby increasing battery life and decreasing transmissionpower or increasing the communication range.

The challenge in the implementation of IC is that it may have to beperformed for many code signals (and their multipath components) at thesymbol rate or faster. The associated computation and data storagerequirements can place a significant burden on the overall receiverdesign, not to mention the increase in design cost.

The prevailing considerations governing the implementation of IC arecomplexity and performance with the former being the dominantconsideration. One prior art implementation is to perform IC byregenerating the MAI based on a tentative decision for each user, thechannel medium estimates and delays of the associated multipaths, andthe spreading and scrambling codes. The regenerated MAI is thensubtracted from the received signal before despreading. Another priorart approach that avoids signal regeneration is based on the computationof the code cross-correlations among all signals and multipaths. Theeffect of MAI on the despread signal can then be evaluated and removed.For K users and L multipaths per user's transmitted signal, thisapproach results in complexity proportional to (KL)² while the approachbased on signal respreading can have complexity proportional to (KL) asit will be later discussed. Both approaches offer theoretically the sameperformance.

In addition to IC, MAI suppression can be achieved using linearMultiuser Detection (MUD) methods such as the decorrelating and theMinimum-Mean-Squared Error (MMSE) detectors. With the exception of ICusing signal regeneration, all other approaches require knowledge of thecode cross-correlations for all signal multipaths of all users. In thecase of a long scrambling code having a considerably larger period thanthe data symbol period (e.g. by a factor of 1000 or more), the codecross-correlations computations need to be performed every symbolperiod. The total number of code cross-correlations is proportional tothe square of the product of the number of interferers and the number ofmultipaths (KL)². The decorrelating and MMSE detectors need to invert acode cross-correlation matrix with size proportional to the product ofthe observation window size, the number of users and the number ofmultipaths per user's signal. Because matrix inversion has cubiccomplexity relative to the matrix size, the decorrelating and MMSEdetectors are not practical choices in CDMA systems employing longcodes. IC based on code cross-correlation computations suffers fromsimilar complexity drawbacks because it requires an equal number of codecross-correlation computations as the decorrelating and MMSE detectors.It also needs to perform the same number of interference subtractions asthe computed code cross-correlations. Performing these computations atthe symbol rate will substantially increase the corresponding receivercomplexity relative to the complexity of a receiver that does notperform multi-user detection or IC.

A CDMA system employing short scrambling codes with a period a few timeslarger than the symbol period, e.g. 8 times, can alleviate thecomputational requirements of MUD/IC. This is because the codecross-correlations have the same values after every scrambling codeperiod and have to be recomputed only when there is a change in the MAIsuch as a user signal or multipath being added or deleted, an existingmultipath changing its arrival time, etc. Those changes occur at a ratethat is much slower than the symbol rate. Nevertheless, the complexityorder is still comparable with the one described for long codes, withthe only exception that computations related to the evaluation of codecross-correlations are performed at a slower rate.

The implementation alternatives for IC are the Parallel IC (PIC) and theSerial IC (SIC). With PIC, all users are simultaneously demodulated, atentative decision is made for their information symbols, the MAI isregenerated and the process is repeated a number of times until allsignificant improvements in the Frame-Error-Rate (FER) performance areachieved. With SIC, a similar process is performed with the exceptionthat a decision on the stronger user is first made, the interferencefrom that user on the decision statistic of the next stronger user issubsequently removed and a decision for the next stronger user is made,etc.

The main advantage of SIC relative to PIC is that the decision for thestronger users is more reliable than the decision for the weaker onesand therefore, the MAI removal of the stronger users is reliable andthis benefits the weaker users. The main disadvantage of SIC relative toPIC is the decision delay associated with SIC because of its serialnature and the architecturally difficult re-ordering of the detectionprocess each time the relative signal strengths change. There are alsoseveral modifications that can be applied to the IC process. Forexample, the decisions made at each IC stage can be hard, soft, clippedor threshold-based, the estimated IC can be weighted to account for thebias that exists in the decisions and for the reliability of theindividual decisions depending on the IC stage.

The complexity of PIC can be made linear with the number of users andmultipaths by using PIC with signal regeneration as suggested in anarticle entitled “Real-Time DSP Implementation of a Coherent PartialInterference Cancellation Multiuser Receiver for DS-CDMA”, pages1536-1540, ICC 1998, by N. S. Correal, et al. Each user has itsmultipath signals regenerated, time adjusted by their correspondingdelays, and then added to construct the estimated MAI beforedespreading. Since this MAI estimate contains all signals subtracting itfrom the received signal will also cancel the contribution of thedesired user's multipath component and therefore the estimated desireduser's multipath component should also be added. The estimated MAI termis common for all users and only the desired user's estimated multipathcontribution needs to be individually added for each multipath. This isthe reason for the complexity reduction from quadratic to linear withthe number of users and multipaths. By subtracting the estimated MAIfrom the received signal, despreading and then adding the estimateddesired signal path to effectively remove its presence from theestimated MAI, all signals interfering with the desired signal path areeliminated from the detection of the desired signal. This assumes thatthe estimated MAI is correct which in turn requires a correct tentativedata decision and accurate channel medium and delay estimates. Theexemplary embodiment of this invention considers PIC.

The exemplary setup in FIG. 1 describes a conventional receiver (Rakereceiver), as it is well known in the art, for K users with L multipathsper user's signal. It includes a plurality of despreading means, aplurality of timing means, a plurality of spread spectrum processingmeans, and a plurality of adding means. The signal, which is thesuperposition of KL signal paths and noise, is received at antenna 10and is subsequently downconverted and digitized by a down converter 20and an analog-to-digital (A/D) converter 30 respectively. The searcher40 identifies L or more paths for each of the K users. Subsequently, Lpaths for each user's signal are passed to despreaders 51, 52, etc.Notice that L is generally different for each user. Each despreader (orfinger) uses a replica of the spread spectrum code of the particularuser's code that is appropriately delayed in time to synchronize withthe corresponding multipath. The l^(th) despreader output for the l^(th)path of the k^(th) user is denoted as D_(k,l).

The plurality of despreaders is shown as l^(st) despreader throughK^(th) despreader. Each despreader includes a chip-code signalgenerator, a modulo-2 adder and a summer (not shown). In addition to thedespread signal paths, the despreader (possibly together with anotherunit) also provides a channel medium estimate for all multipaths of eachuser's signal (C_(k,l), . . . , C_(k,L) for user k). The channel mediumestimates are needed by the conventional receiver to combine themultipaths and by the IC to regenerate the despread signals. Afterdespreading, the multipath signals for each user and the correspondingchannel medium estimates are provided to decision devices, 61, 62, whichin the exemplary embodiment comprises a Rake receiver. The Rake receiverperforms maximal ratio combining (MRC) on the multipaths of each user'ssignal and provides a decision d⁰ _(l) 63, d⁰ _(K) 64 for thecorresponding information symbol. The decision can be either hard orsoft and, for the purposes of IC, it can be either clipped (the softvalue is clipped at −1 and +1 for binary transmission) or thresholded(e.g., similar to the clipped one but the soft decision is set to zeroif its absolute value is smaller than a threshold). For a receiveremploying IC, the Rake decisions constitute the initial decisions andare subsequently provided to the IC system. In an alternate design, theinitial decisions can be made with an equalizer circuit.

FIG. 2 describes the regeneration process of the signal at the input ofthe receiver after digitization. Based on the (possibly modified)decisions from the Rake receiver of each user (or another receiver suchas a MUD or an equalizer), the IC system first regenerates in theplurality of respread channel blocks 71, 72 the signal from eachtransmitter by spreading the decision 63, 64 for each user with thecorresponding spread spectrum chip code (CDMA code). Different users mayhave different spread spectrum chip codes. Subsequently, to account forthe channel medium effects on each user's multipath signals, therespread signal is multiplied with the channel medium estimate for eachmultipath using blocks 81-84 and time delayed by the correspondingmultipath delay using delay blocks 91-94. Adder 100 sums all multipathsfor the signals of all users and the result 102 is an estimate of thesignal at the input of the receiver before despreading.

Since the regenerated received signal contains the received signal foreach user, its subtraction from the originally received signal will notonly remove the interference relative to a desired user but it will alsoremove the signal of that user. Therefore, for the demodulation of aparticular user's signal, the estimated signal for that user (includingthe multipaths) should be added to the received signal estimate that iscommonly utilized by all users. This can be done prior to, or after,despreading with the second option being the more efficient one since itrequires substantially less operations. The estimated signal of eachuser, including possible multipaths, after despreading is simply givenby the estimated information data multiplied with the channel mediumresponse estimate for each multipath. FIG. 3 describes thesecorresponding operations using devices 111-114 one for each of themultpaths.

The conventional (prior art) approach to perform IC is to subtract theestimated regenerated signal from the received signal beforedespreading. This IC approach is depicted in FIG. 4. In subtractor 120,the regenerated signal estimate 102 is subtracted from the receivedsignal 101. Conventional despreading for each identified multipath ofeach user follows in the plurality of finger blocks 131-134. The desireduser multipath component for each multipath is added in the plurality ofadder blocks 141-144. Finally, in the plurality of Rake combiner blocks151, 152, the multipaths are combined by a Rake combiner and a decisionsignal 153, 154 for the information symbol of each user is produced. TheIC process is then repeated several times (IC stages) and typically 3 or4 IC stages are enough to achieve essentially all performance gains. Theregenerated signal at each stage may be weighted (scaled) with differentweights having values smaller than or equal to one. This is done inorder to remove a decision bias and to reflect that the decisions at thelatter IC stages are more reliable. This approach was suggested in U.S.Pat. No. 5,553,062 entitled “Spread Spectrum CDMA Interference CancellerSystem and Method”, by D. L. Schilling, et. al.

For the k^(th) user, denoting by w_(k), c_(k,l), and d_(k), the spreadspectrum code, the channel estimate of the l^(th) path and the datadecision, respectively, the equation describing the despread signalD^((i)) _(k,l) at the i^(th) IC stage (i>0) is $\begin{matrix}{D_{k,l}^{(i)} = {{w_{k}^{T}\left\lbrack {\underset{\_}{r} - \left( {\sum\limits_{k^{\prime},l^{\prime}}{w_{k^{\prime}}c_{k^{\prime},l^{\prime}}d_{k^{\prime}}^{({i - 1})}}} \right)} \right\rbrack} + {{\underset{\_}{c}}_{k,l}{d_{k}^{({i - 1})}.}}}} & (1)\end{matrix}$

A problem with the IC approach used in FIG. 4 is its computationalcomplexity. The memory size required with the above approach isproportional to N_(s)N_(c), where N_(c) is the number of chips perinformation signal and N_(s) is the number of samples per chip, andtherefore a large amount of memory is required. A need thus exist in theart for a method and apparatus that can provide IC with reducedcomplexity and reduced memory requirements as compared to the prior artIC techniques.

SUMMARY OF THE INVENTION

The present invention describes a reduced complexity spread spectrumcode division multiple access (CDMA) interference canceller (IC)implementation to suppress multiple access interference (MAI) in a CDMAcommunication system.

Each of the communication signals is spread spectrum processed by aspread spectrum code. This spread spectrum code may be a pseudo-random(PN), an orthogonal code (Walsh code) or, as in the proposed thirdgeneration CDMA-based cellular systems, a code resulting bysuperimposing a Walsh and a PN code (CDMA code). The uniqueness of thecode may be based on different spreading codes or on delayed versions ofthe same CDMA code.

The interference canceller at the receiver includes a MAI regenerationunit and multiple IC units. The MAI regeneration unit utilizes initialdecisions made by a receiver to reconstruct the MAI. The receiver makingthe initial decisions may be a single-user receiver (typically a Rakereceiver) or a more complex receiver structure, such as MUD or anequalizer. Using the initial decisions for all users and thecorresponding spread spectrum codes, the MAI regeneration unit firstperforms a function analogous to that of the transmitters and generatesthe estimated transmitted signal for each user. This signal simplycomprises of the corresponding spread spectrum CDMA code modulated bythe estimated information symbol. The regenerated transmitted signalshave the same time reference. The effects of the channel medium are thenmapped on the regenerated transmitted signals. The regenerated signalfor each user is delayed by a time period corresponding to eachcorresponding multipath and multiplied with the channel medium estimatefor the particular multipath. The delay and channel medium informationfor each multipath are typically obtained as a byproduct of the signaldetection process (e.g. a Rake receiver is already provided with delayand channel medium estimates for each multipath) and do not add on theoverall IC complexity. Once the multipath signals corresponding to eachuser are reconstructed, they are added to represent the received signalcorresponding to the particular user. Once the received signals for allusers are reconstructed, they are added to represent the received signalfrom the plurality of users which is an estimate of the signal observedat the input of the receiver. The regenerated signal is then despread atthe time instant of each identified multipath and the result issubtracted from the received despread signal for the correspondingmultipath. Because the despread regenerated signal includes themultipath component of a particular path, the estimated despread signalfor that particular path is also added after the despread regeneratedsignal is subtracted. Subsequently, new decisions are made and theprevious process may be iterated several times.

BRIEF DESCRIPTION OF THE DRAWINGS

The features of the present invention, which are believed to be novel,are set forth with particularity in the appended claims. The invention,may best be understood by reference to the following description, takenin conjunction with the accompanying drawings, in the several figures ofwhich like reference numerals identify like elements, and in which:

FIG. 1 is a block diagram of a prior art spread spectrum CDMA Rakereceiver.

FIG. 2 is a block diagram for the received signal regeneration beforedespreading which is employed by the spread spectrum CDMA interferencecanceller of the invention and the prior art.

FIG. 3 is a block diagram for the regeneration of the signal componentscorresponding to the communication signals paths after despreading whichis employed by the spread spectrum CDMA interference canceller of theinvention and the prior art.

FIG. 4 is a block diagram describing the architecture for theinterference canceller of the prior art.

FIG. 5 is a block diagram describing the architecture for theinterference canceller of the disclosed invention, according to oneembodiment of the invention.

FIG. 6 is a block diagram describing the architecture for theinterference canceller of the disclosed invention, according to anotherembodiment of the invention.

FIG. 7 is a block diagram describing the architecture for theinterference canceller of the disclosed invention, according to anotherembodiment of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

While the specification concludes with claims defining the features ofthe invention that are regarded as novel, it is believed that theinvention will be better understood from a consideration of thefollowing description in conjunction with the drawing figures.

The following description can apply to both the base station and themobile station of a spread spectrum code division multiple access (CDMA)communication system. A system with K users and L multipaths per user'ssignal is assumed. Also, although the discussion will use the samenumber of multipaths for each user's signal, the number of multipathsfor each can be different for each user's signal but this does notaffect the applicability of the disclosed invention while it makes itsdescription clearer.

The proposed IC approach in accordance with the present invention isdescribed in FIG. 5. According to the invention, the regeneratedestimated signal 102 is first despread in the IC block 500 by aplurality of blocks (fingers) 161-164 for each user using the spreadspectrum code of that user at the appropriate time instant defined bythe estimated delay of each multipath for that user. The subtraction ofthe estimated interference from each multipath of each user is performedafter despreading in the plurality of blocks 171-174. The estimatedmultipath component for the desired user is subsequently added in theplurality of blocks 181-184. Alternatively, the order of the subtractingand adding steps can be reversed, as illustrated in IC block 510 of FIG.6. Clearly, the order of blocks 171-174 and 181-184 in IC block 500 ofFIG. 5 can be reversed without affecting the invention, as shown in ICblock 520 of FIG. 7. Finally, the multipaths of each user are combinedin a plurality of decision circuits such as Rake receiver combinerblocks 191-192 and tentative decisions are made regarding theinformation symbol of each user's signal. In an alternate design, thedecisions can be made with an equalizer circuit. Using the same notationas in Equation (1), the equation describing the despread signal for thel^(th) path of the k^(th) user with the proposed IC at the i^(th) stage(i>0) is $\begin{matrix}{D_{k,l}^{(i)} = {D_{k,l}^{(0)} - {w_{k}^{T}\left( {\sum\limits_{k^{\prime},l^{\prime}}{w_{k^{\prime}}c_{k^{\prime},l^{\prime}}d_{k^{\prime}}^{({i - 1})}}} \right)} + {{\underset{\_}{c}}_{k,l}{d_{k}^{({i - 1})}.}}}} & (2)\end{matrix}$

The difference in the order of operations of Equations (1) and (2) isthe same as the one reflected in FIGS. 4 and 5. Equation (1) and FIG. 4describe the prior art while Equation (2) and FIG. 5 describe thedisclosed invention.

The IC process can be repeated several times (several IC stages) untilall performance benefits of performing repetitive ICs are exhausted.Typically, this will be up to three or four repetitions. In fact, assuggested by the corresponding equations, the prior art IC method hasidentical performance with that of the IC method described in thedisclosed invention.

Comparing to FIG. 4 which describes the established prior art approachof performing IC, the approach in FIG. 5 that is proposed in thisinvention involves KL more adders but the corresponding additions areperformed after despreading. Assuming N_(s) samples per chip and N_(c)chips per information symbol, the rate at which additions are performedis reduced by N_(s)N_(c) The number of additions for subtracting theinterference before depreading is N_(s)N_(c) while the number ofadditions for subtracting the interference after despreading is KL.Typically, for a CDMA communications system operating at or belowcapacity, KL<N_(s)N_(c). Therefore, for a system operating at capacity,the number of additions with the IC approach proposed in this inventionis smaller than the number of additions with the established ICapproach. Also, the corresponding additions are performed at a muchlower rate. The proposed IC method has considerably reducedcomputational complexity relative to the computational complexity of theIC method considered in prior art. This reduction is even larger forcommunication systems operating below capacity.

The memory size for storing the received signal with the establishedapproach is proportional to N_(s)N_(c) while with the approach proposedin this invention the memory size is proportional to KL. The size(number of bits representing the signal) of the received data storedafter despreading is larger than the size of the received data storedbefore despreading by a factor of 1.5-2 depending on the value of N_(c).Because the IC performance degrades rapidly for time errors aboveT_(c)/10, where T_(c) is the chip duration, typical values of N_(s) forsystems performing IC are N_(s)=8 and N_(s)=16.

At capacity, the memory size required by the IC approach in thisinvention is about four to twelve times smaller than the memory sizerequired with the prior art IC approach. The same is true about thereduction in the number of additions associated with interferencesubtraction. The IC device and method described herein substantiallyreduce implementation complexity thereby reducing cost, while retainingall features of interference cancellation.

Several other modifications for the proposed IC method and architecturemay be devised by those skilled in the art.

1. An interference cancellation circuit for use in a spread spectrumcode division multiple access (CDMA) receiver, the interferencecancellation circuit comprising: a first despreader circuit fordespreading a received spread spectrum signal for each path of each CDMAcode in the received spread spectrum signal; a first decision circuitcoupled to the despreader circuit for performing a decision for eachinformation symbol of each CDMA code in the received spread spectrumsignal; a channel estimation circuit coupled to the despreader circuitfor obtaining an estimate of the channel medium for each path of eachCDMA code in the received spread spectrum signal; a regeneration circuitcoupled to the decision circuit and channel estimation circuit forproviding a regenerated spread spectrum signal estimate by regeneratingand summing the received signals for each signal path of each CDMA codein the received spread spectrum signal; a multiplier circuit coupled tothe decision circuit and channel estimation circuit, for providing aninterference-free estimate for each despread signal path of each CDMAcode in the received spread spectrum signal; a second despreader circuitcoupled to the regeneration circuit, for despreading the regeneratedsignal estimate for each path of each CDMA code in the received spreadspectrum signal; an adder circuit coupled to the first despreadercircuit for adding the estimate of the interference-free despread signalpath to the corresponding despread received signal path for each path ofeach CDMA code in the received spread spectrum signal; a subtractorcircuit coupled to the adder circuit for subtracting the despreadregenerated signal estimate from an output of the adder for each path ofeach CDMA code in the received spread spectrum signal; and a seconddecision circuit coupled to the subtractor circuit for performing adecision for the information symbol of each CDMA code in the receivedspread spectrum signal.
 2. The interference cancellation circuit ofclaim 1, wherein the first decision circuit comprises an equalizer orRake receiver.
 3. The interference cancellation circuit of claim 1,wherein the second decision circuit comprises a Rake receiver.
 4. Aninterference cancellation circuit for use in a spread spectrum codedivision multiple access (CDMA) receiver, the interference cancellationcircuit comprising: a first despreader circuit for despreading areceived spread spectrum signal for each path of each CDMA code in thereceived spread spectrum signal; a first decision circuit coupled to thedespreader circuit for performing a decision for each information symbolof each CDMA code in the received spread spectrum signal; a channelestimation circuit coupled to the despreader circuit for obtaining anestimate of the channel medium for each path of each CDMA code in thereceived spread spectrum signal; a regeneration circuit coupled to thedecision circuit and channel estimation circuit for providing aregenerated spread spectrum signal estimate by regenerating and summingthe received signals for each signal path of each CDMA code in thereceived spread spectrum signal; a multiplier circuit coupled to thedecision circuit and channel estimation circuit, for providing aninterference-free estimate for each despread signal path of each CDMAcode in the received spread spectrum signal; a second despreader circuitcoupled to the regeneration circuit, for despreading the regeneratedsignal estimate for each path of each CDMA code in the received spreadspectrum signal; a subtractor circuit coupled to the first despreadercircuit for subtracting the despread regenerated signal estimate from anoutput of the first despreader circuit for each path of each CDMA codein the received spread spectrum signal; an adder coupled to thesubstractor circuit for adding the estimate of the interference-freedespread signal path to the corresponding despread received signal pathfor each path of each CDMA code in the received spread spectrum signal;and a second decision circuit coupled to the adder circuit forperforming a decision for the information symbol of each CDMA code inthe received spread spectrum signal.
 5. The interference cancellationcircuit of claim 4, wherein the first decision circuit comprises anequalizer or Rake receiver.
 6. The interference cancellation circuit ofclaim 4, wherein the second decision circuit comprises a Rake receiver.7. A method of interference cancellation (IC) for spread-spectrum codedivision multiple access (CDMA) communications, comprising the steps of:(a) despreading a received spread spectrum signal at times correspondingto identified signal paths for each path of each CDMA code in thereceived spread spectrum signal; (b) performing a decision for eachinformation symbol for each respective CDMA code in the received spreadspectrum signal; (c) obtaining an estimate of the channel medium foreach path of each DCMA code in the received spread spectrum signal; (d)using the decision for each information symbol of each CDMA code and theestimate of the channel medium for each path of each CDMA code in thereceived spread spectrum signal to provide a regenerated spread spectrumsignal estimate by regenerating and summing the regenerated spreadspectrum signal for each path of each CDMA code in the received spreadspectrum signal; (e) providing an interference-free estimate for eachdespread signal path using the corresponding channel medium estimate andthe decision for each information symbol for each respective CDMA codein the received spread spectrum signal; (f) despreading the regeneratedsignal estimate at times corresponding to identified signal paths foreach path of each CDMA code in the received spread spectrum signal; (g)adding the estimate of the interference-free despread signal path to thecorresponding despread receive signal path for all paths of each CDMAcode in the received spread spectrum signal; (h) subtracting thedespread regenerated signal estimate from an output of the adder; and(i) performing a decision for the information signal carried in thespread spectrum signal for each CDMA code.
 8. A method as defined inclaim 7, wherein step (g) is performed before step (h).
 9. A method asdefined in claim 7, further comprising repeating steps (d) to (i) atleast one more time.
 10. A method as defined in claim 7, wherein thedespread signal estimates in steps (e) and (f) are scaled by a weightingfactor.
 11. A method defined in claim 74, wherein the decisions in step(b) or (i) are made with a Rake receiver.
 12. A method defined in claim7, wherein the decisions in step (b) are made with an equalizer.